The use of configurable integrated circuits (“IC's”) has dramatically increased in recent years. One example of a configurable IC is a field programmable gate array (“FPGA”). An FPGA is a field programmable IC that has an internal array of logic circuits (also called logic blocks) that are connected together through numerous interconnect circuits (also called interconnects) and that are surrounded by input/output blocks. Like some other configurable IC's, the logic circuits and the interconnect circuits of an FPGA are configurable (i.e., they can be configured to perform different functions and operations by receiving different configuration data). One benefit of configurable IC's is that they can be uniformly mass produced and then subsequently configured to perform different operations.
Recently, some have suggested implementing an FPGA within a system on chip (“SoC”). A SoC is an IC that includes all of the necessary hardware and electronic circuitry for a complete system. The SoC is typically a small piece of semiconducting material (e.g., silicon) on which several macroblocks are embedded. Some of these macroblocks can include a memory, a microprocessor, digital signal processor, etc. A characteristic of the SoC is that it requires all the macroblocks to be manufactured with one type of fabrication technology. This can be problematic since each macroblock may have a different optimal fabrication technology (e.g., a memory macroblock might be optimally manufactured at 90 nm, while an analog macroblock might be optimally manufactured at 180 nm). As such, in some instances, some of the macroblocks of a SoC might be manufactured sub-optimally. Another drawback of a SoC is that the design process is often extensive, cumbersome and expensive.
Therefore, there is a need in the art for a better method of fabricating a configurable IC that has configurable IC operations and non-configurable IC operations within the IC.